#define _CRT_SECURE_NO_WARNINGS 1

struct ListNode* reverseList(struct ListNode* head) {
    struct ListNode* rhead = NULL;
    struct ListNode* cur = head;
    struct ListNode* next = NULL;

    while (cur)
    {
        next = cur->next;
        cur->next = rhead;
        rhead = cur;
        cur = next;

    }
    return rhead;

    // if(head==NULL)
    //     return NULL;
    // struct ListNode* n1=NULL;
    // struct ListNode* n2=head;
    // struct ListNode* n3=head->next;

    // while(n2)
    // {
    //     n2->next=n1;
    //     n1=n2;
    //     n2=n3;
    //     if(n3)
    //         n3=n3->next;
    // }
    // return n1;
}